package com.king.juc.shared.exercise;

/**
 * 售票窗口
 * @author king
 * @date 2020/10/28 17:48
 */
public class TicketWindow {

    private int count;

    /**
     * 初始化售票
     * @param count 数量
     */
    public TicketWindow(int count){
        this.count = count;
    }

    /**
     * 获取余票
     * @return 数量
     */
    public int getCount(){
        return count;
    }

    /**
     * 卖票
     *      synchronized 保护count
     * @param amount 购买数量
     * @return 票数
     */
//    public int sell(int amount){
    public synchronized int sell(int amount){
        if(this.count >= amount){
            this.count -= amount;
            return amount;
        } else {
            return 0;
        }
    }
}
